The present invention relates to computation processors and, more particularly, to a multi-processor capable of simultaneously executing a plurality of programs in a time-interlaced manner.
Because of their relatively low cost, microprocessors are now finding wide usage for information processing and control functions. It is often desirable, or required, that two or more processing functions be executed simultaneously in connection with a particular task to be performed. For example, sometimes more than one processing function is involved in the control of communication between a processor of a computing system and its various peripheral devices such as memory and/or input and output devices.
In the past whenever two programs are to be executed simultaneously in connection with a desired function, it has been the practice to include two separate and independent microprocessors for such purpose. The use of independent processors, though, can overly complicate the desired operation. For example, it is often desirable that the individual processors operate on the same data and/or provide results to the same destination. Relatively complicated control logic must be included in such an arrangement to prevent the two independent processors from simultaneously accessing the same data flow paths and data storage devices.